using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace QLThuChi.Repositories
{
	#region using
	using QLThuChi.Models;
	#endregion
	public class ChiTietPhieuRepository
	{
		public static List<ChiTietPhieu> SelectAll()
		{
			return DataContext.Instance.ChiTietPhieux.ToList();
		}

		public static ChiTietPhieu SelectByID(int machitietphieu)
		{
			return DataContext.Instance.ChiTietPhieux.FirstOrDefault(item => item.MaChiTietPhieu == machitietphieu );
		}

		public static bool Insert(ChiTietPhieu obj)
		{
			try
			{
				DataContext.Instance.ChiTietPhieux.AddObject(obj);
				DataContext.Instance.SaveChanges();
				return true;
			}
			catch
			{
				return false;
			}
		}

		public static bool Delete(int machitietphieu)
		{
			try
			{
				var delitem = DataContext.Instance.ChiTietPhieux.FirstOrDefault(item => item.MaChiTietPhieu == machitietphieu );
				DataContext.Instance.ChiTietPhieux.DeleteObject(delitem);
				DataContext.Instance.SaveChanges();
				return true;
			}
			catch
			{
				return false;
			}
		}

		public static bool Save()
		{
			try
			{
				DataContext.Instance.SaveChanges();
				return true;
			}
			catch
			{
				return false;
			}
		}

		public static List<ChiTietPhieu> RetrieveByID(int machitietphieu)
		{
			return (from item in DataContext.Instance.ChiTietPhieux where  item.MaChiTietPhieu == machitietphieu  select item).ToList();
		}

		public static List<ChiTietPhieu> SelectByMaPhieu(int maphieu)
		{
			var lstItem = (from item in DataContext.Instance.ChiTietPhieux where item.MaPhieu == maphieu select item).ToList();
			return lstItem;
		}

		public static List<ChiTietPhieu> SelectByMaVLXD(int mavlxd)
		{
			var lstItem = (from item in DataContext.Instance.ChiTietPhieux where item.MaVLXD == mavlxd select item).ToList();
			return lstItem;
		}

	}
}